Yet another LIFE simulator				9/14/80 Steve Ward

Introduction
------------

  LIFE.COM runs on a 48K H/Z89 and provides a simulator/workbench for
  experimentation with John Horton Conway's popular cellular automaton.

  Briefly, LIFE is a 2-dimensional array of cells, each of which assumes
  one of two states ("dead" or "alive") at any time.  Time is quantized
  as "generations"; at each generation or time step, every cell assumes
  a new state which is a function of its own previous state as well as
  the previous states of its eight (orthogonal and diagonal) neighbors.
  The state rules are:

	1) A dead cell with exactly three live neighbors will become alive
	  on the next generation; otherwise it will remain dead.

	2) A live cell with 2 or 3 live neighbors will remain alive on the
	  next generation; otherwise it will become dead.

Various arrangements of live cells exhibit intriguing growth patterns on
successive generations, and a flurry of activity (mostly by computer hackers)
during the last decade has resulted in the discovery and cataloging of such
interesting LIFE objects as gliders, glider guns, ships, puffer trains, and
shuttles.  A representative sample of these appear in the sample workspace
file LIFE.DAT included with this program.  However, the field is young enough
and the possibilities so varied that, with a reasonable computer tool, you
can hope to make new and remarkable discoveries yourself.  Keep in mind that
LIFE is a Turing-universal computer; you may, in theory, perform arbitrary
computations using suitably intricate initial configurations of LIFE cells.

LIFE.COM provides a 50 by 80 LIFE space whose top/bottom, left/right edges
are logically adjacent; thus the space "wraps around" both horizontally and
vertically so that a single glider will travel forever and remain in view.
It allows you to edit and manipulate the configuration of live cells in the
workspace, to save and retrieve configurations and to piece simple
configurations together in various orientations to make more complex ones,
and to "run" a configuration through successive generations.


Usage:
-----
	life <filename>		default <filename> is "LIFE.DAT"

 Commands:

	CURSOR MOTION:	Keypad arrows, 0. ^F, ^N, ^P, ^H, TAB, RETURN.
	SET POINTS:	keypad 5 complements (XORs) current point.
	DELETE:		keypad 5; DELETE key.
	SAVE:		A-Z save relative to cursor in one of 26 slots.
	GET:		a-z fetch (XOR) relative to cursor.
	EXIT:		^X write out A-Z slots in file and exit.
	QUIT:		^C quit, no file output.
	GENERATION:	ENTER (keypad): step one simulation step.
			LINEFEED: run until character typed.
	CLEAR:		^Z clear LIFE space.
	ORIENTATION:	KEY 9:  Rotate about cursor
			KEY 7:  Flip about cursor
	RANDOM:		KEY 1:  Produce random 5x5 configuration around cursor
			KEY 3:	Random 10x10 configuration around cursor
			\ run, randomizing center 5x5 every 100 generations.
	MISC:		^L redisplay screen.


A good way to get started is by trying some of the configurations in LIFE.DAT.
Simply type the command

	>LIFE

then, say, "i" followed by <linefeed> to see a glider gun in action.  Type
CONTROL-Z to clear the screen, then another letter to view a different pattern,
etc.
